The background description provided herein is for the purpose of generally presenting the context of the disclosure. Unless otherwise indicated herein, the materials described in this section are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.
Various computing/networking applications involve flow classifications and/or hash table lookups. For example, as the telecommunication industry transitions to software defined network (SDN) or network function virtualization (NFV) to support legacy and upcoming usage models such as 5G on standard high volume servers, or the cloud computing industry, scalable and distributed software routing/switching has become one of the key requirements of the packet processing architecture. Two level distributed hashing architecture has been developed to achieve high performance packet switching/routing using either a cluster of standard high-volume servers or a single system composed of multiple CPU cores. In such architecture, network packets are identified in part by lookup in various hash tables. Whether it is two level or one level hashing, the performance of hash table degrades as the number of elements in each hash “bucket” increases.